﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XF.Meeting.Entity.CommonEntity;
using XF.Meeting.Entity.dbEntity;
using XF.Meeting.Entity.DTO;
using XF.Meeting.Entity.Query;
using XF.Meeting.Entity.View;

namespace XF.Sugar.IService
{
    public partial interface ISettingSystemService
    {
        Task<List<SystemNameInfo>> GetSystemName();
        Task<SubscribeInfo> GetSubscribe();
        Task<List<SettingSystem>> GetSettingSystem();
        Task<List<SettingThirdParty>> GetSettingThirdParty();
        Task<List<SettingUseLicense>> GetSettingUseLicense();
        Task<bool> UpdateSettingSystem(SettingSystem entity);
        Task<bool> UpdateSettingThirdParty(SettingThirdParty entity);
        Task<bool> UpdateSettingUseLicense(SettingUseLicense entity);
        Task<(bool, string)> AddRegional(RegionalInfo entity);
        Task<(bool, string)> UpdateRegional(RegionalInfo entity);
        Task<(bool, string)> DeleteRegional(RegionalInfo entity);
        Task<PageList<RegionalInfo>> GetRegional(RegionalQuery query);
        Task<List<RegionalInfo>> GetRegionalOne();
        Task<List<RegionalInfo>> GetRegionalByPID(RegionalQuery query);
        Task<PageListMobile<RegionalInfo>> GetRegionalForMobile(RegionalQuery query);
        Task<List<Root>> GetRegionalForPad();
        Task<bool> ADUserSync();
        Task<List<RegionalInfo>> GetRegionalOneForAdmin(RegionalInfo query);

        Task<List<OrganizationTree>> GetOrganizationTree();
        Task<OrgcalendarsAuth> GetOrganizationTreeForOrgcalendarsAuth(UserInfo user);
        Task<List<OrganizationTree>> GetOrganizationTreeForCalendars();
        Task<List<Regional_OrganizationEntity>> GetRegional_Organization(Regional_Organization query);
      
        Task<List<OrganizationInfo>> GetOrganizationOne();
        Task<List<OrganizationInfo>> GetOrganizationByPID(OrganizationQuery query);




    }
}
